Designed by | Sun Microsystems |
---|---|
Instruction set | SPARC V9 |
Cores | 16 |
Rock (or ROCK) was a multithreading, multicore, SPARC microprocessor developed at Sun Microsystems. Now canceled, it was a separate development from the CoolThreads/Niagara (UltraSPARC T1, T2, and SPARC T3) family of processors.
Rock aimed at higher per-thread performance, higher floating-point performance, and greater SMP scalability than the Niagara family. The Rock processor targeted traditional high-end data-facing workloads, such as back-end database servers, as well as floating-point intensive high-performance computing workloads, whereas the Niagara family targets network-facing workloads such as web servers.
Contents |
The Rock processor implements the 64-bit SPARC V9 instruction set and the VIS 3.0 SIMD multimedia instruction set extension.[1] Each Rock processor has 16 cores, with each core capable of running two threads simultaneously, yielding 32 threads per chip. Servers built with Rock use FB-DIMMs to increase reliability, speed and density of memory systems. The Rock processor uses a 65 nm manufacturing process for a design frequency of 2.3 GHz.[2] The maximum power consumption of the Rock processor chip is approximately 250 W.[3]
The 16 cores in Rock are arranged in four core clusters. The cores in a cluster share a 32 KB instruction cache, two 32 KB data caches, and two floating point units. Sun designed the chip this way because server workloads usually have high re-utilization in data and instruction across processes and threads but low number of floating-point operations in general. Thus sharing hardware resources among the four cores in a cluster leads to significant savings in area and power but low impact to performance.[4]
In 2005, Sun publicly disclosed a feature in the Rock processor called hardware scout. Hardware scout uses otherwise idle chip execution resources to perform prefetching during cache misses.[5]
In March 2006, Marc Tremblay, Vice President and Chief Architect for Sun's Scalable Systems Group, gave a presentation at the Xerox Palo Alto Research Center (PARC) on thread-level parallelism, hardware scouting, and thread-level speculation.[6] These multithreading technologies were expected to be included in the Rock processor.
In August 2007, Sun confirmed that Rock would be the first production processor to support transactional memory.[7] To provide the functionality, two new instructions were introduced (chkpt, commit) with one new status register (cps). The instruction chkpt <fail_pc> is used to begin a transaction and commit to commit the transaction. If transaction abort condition is detected, jump to <fail_pc> is issued and cps can be used to determine the reason. The support is best-effort based, as in addition to data conflicts, transactions can be aborted by other reasons. These include TLB misses, interrupts, certain commonly used function call sequences and "difficult" instructions (e.g., division).[8] Nevertheless, many (arguably fine-grained) code blocks requiring synchronization could have benefited from transactional memory support of the Rock processor.[9]
In February 2008, Marc Tremblay announced a unique feature called "out-of-order retirement" at the ISSCC. The benefits include replacing the "traditional instruction window with this much smaller deferred queue".[10]
In April 2008, Sun engineers presented the transactional memory interface at Transact 2008, and the Adaptive Transactional Memory Test Platform simulator was announced to be made available to the general public shortly after.[8][11]
The Rock processor was intended to be used in Sun's proposed Supernova (server) line. Details of the server specifications were released in OpenSolaris Architecture Review case FWARC/2008/761.[12]
The Physical Resource Inventory (PRI) specification of ARC 2008/761 indicates the Supernova platforms would support: IEEE 1275 OpenFirmware, platform virtualization through Logical Domains (LDOMs), independent system controller (SC), and Fault Management Architecture (FMA) Domain Services.[13] The FMA feature was originally referenced to FWARC/2006/141, but this was closed and extended in FWARC/2008/455 "to successfully diagnose PCI fabric errors that occur in root domains."[14]
The iodevice Machine Description (MD) Node Specification of ARC 2008/761 indicates support for both PCI Express (PCIe) hot-pluggable slots as well as a bridge to older PCI eXtended (PCI-X)).[15]
Hitendra Zhangada, in the SPS Common Software Features Engineering group, at Sun described a variety of PCIe parameters in software which support the hardware platforms. "Bronze" servers would support PCIe slots 0-5. "Silver" servers would support I/O boards 0-1 and PCIe slots 0-7 for each board. "Platinum" servers would support I/O boards 0-3 and PCIe slots 0-7 for each board. "Silver-II" servers would support PCIe slots 00-19. "Platinum-II" servers would support boards 0-7 and slots 0-3 for each board.[16]
Zhangada sponsored a fast-track software ARC case describing Supernova platforms AT480 and AT880. Ravi Subbarao, Director of Enterprise Systems Software at Sun, sponsored ARC 2008/761, describing platforms bindings and interface changes for MD, PRI and OpenBoot devices.[16]
The SPARC Enterprise AT7180 was speculated to be a single socket model handling as many as 32 hardware threads.[17]
The SPARC Enterprise AT7280 was speculated to be a dual socket model handling as many as 64 hardware threads.[18]
The Supernova Silver-II was proposed to be named the SPARC Enterprise AT7480, a quad socket model reported to handle as many as 128 hardware threads,[19] based on the PCI Express bus architecture with Open Boot firmware.
The Supernova Platinum-II was proposed to be named the SPARC Enterprise AT7880, an eight-socket model reported to handle as many as 256 hardware threads,[20] based on the PCI Express bus architecture with Open Boot firmware. Pingchung Lee explained in a December 10, 2008 email for ARC case 2008/761 that the AT7880 would have eight individual CPU boards, each with one Sun Neptune multithreaded 10 Gigabit Ethernet chip.[21]
In February 2005, Sun CEO Scott McNealy discussed the "taping out" of Rock to be on schedule for later in 2005.[22]
In January 2007, Sun announced the tape-out of Rock.[23]
In April 2007, Sun CEO Jonathan I. Schwartz blogged an image of a BGA-packaged Rock chip, labeled UltraSPARC RK, and disclosed that it could address 256 terabytes of virtual memory in a single system running Solaris.[24]
In May 2007, Sun announced the first silicon of Rock booting Solaris successfully.[25]
In August 2007, Sun released details on the use of transactional memory in the Rock architecture.[26]
In December 2007, Sun announced that Rock would be delayed from 2008 until 2009 due to "entirely new design and given its uniqueness and complexity".[27]
In 2008, Mark Moir presented "Rock's Transactional Memory and How to Exploit It" at Sun Labs Open House 2008, discussing transactional memory as well as scouting threads and how these mitigated the computing problems not solved by innovative use of massive thread counts of slower processors.[28]
In September 2008, the OpenSolaris project started to organize patches for the Rock-based SuperNova platforms.[29]
In January 2009, Sun CEO Jonathan Schwartz announced Rock was still on track for a 2009 release.[30]
On 10 March 2009 Dave Dice, Yossi Lev, Mark Moir and Dan Nussbaum presented "Early Experience with a Commercial Hardware Transactional Memory Implementation" at the Fourteenth International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS '09). They published their "experience with the hardware transactional memory (HTM) feature of two pre-production revisions of a new commercial multicore processor", Rock, by Sun.[31][32][33] This paper was published in May 2009.
On April 20, 2009, Sun and Oracle Corporation announced that they had entered into a definitive agreement under which Oracle would acquire Sun.
On 12 June 2009, a posting on a Sun blog announced a technical NDA-only presentation on ROCK on July 14, 2009 at the Hamburg, Germany OpenSolaris Users Group Meeting.[34]
On 15 June 2009, the New York Times reported that "two people briefed on Sun’s plans" said the Rock project was canceled. Sun did not comment.[35][36]
On 17 June 2009, The EE Times reported that "Sun did not submit a paper on Rock... leading to speculation the company may have canceled the chip."[37]
On Wednesday, 24 June 2009, a presentation on "Speculative Threading & Parallelization" featured "A Novel Pipeline Architecture Implemented in Sun's ROCK Processor" at The 36th International Symposium on Computer Architecture.[38]
On 6 August 2009, support for Rock was removed from the OpenSolaris Project.[39]
On 13 August 2009, a presentation on "NZTM: Nonblocking Zero-indirection Transactional Memory" written by Fuad Tabba, Mark Moir, James Goodman, Andrew Hay, and Cong Wang, was presented at the 21st ACM Symposium on Parallelism in Algorithms and Architectures in Calgary, Canada. The NZSTM algorithm performance was evaluated on Sun’s forthcoming Rock processor.[40][41]
On 11 September 2009, The Register reported that the Rock processor was left out of the SPARC processor roadmap then being shown to Sun's customers and partners.[42]
On 15 September 2009, the paper "tm_db: A Generic Debugging Library for Transactional Programs" written by Yossi Lev and Maurice Herlihy, was presented at The Eighteenth International Conference on Parallel Architectures and Compilation Techniques (PACT) Raleigh, North Carolina.[43][44]
On 26 October 2009, Dave Dice, Yossi Lev, Mark Moir and Dan Nussbaum expanded a formerly published paper "Early Experience with a Commercial Hardware Transactional Memory Implementation" which was presented at the Fourteenth International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS '09).[45]
On January 27, 2010, Oracle announced it had completed its acquisition of Sun.
On 5 April 2010, Dave Dice, Yossi Lev, Virendra Marathe, Mark Moir, Marek Olszewski and Dan Nussbaum released a paper "Simplifying Concurrent Algorithms by Exploiting Hardware Transactional Memory" to be presented at the 22nd ACM Symposium on Parallelism in Algorithms and Architectures (SPAA 2010).[46][47]
On 5 April 2010, Dave Dice and Nir Shavit released a paper "TLRW: Return of the Read-Write Lock" to be presented at SPAA 2010.[46][48]
On 12 May 2010, Reuters reported that Oracle CEO Larry Ellison shut down the Rock project when Oracle acquired Sun, quoting him as saying, "It was just madness to continue that project."[49]
|